//  command + R编译
//输入一棵二叉树，判断该二叉树是否是平衡二叉树。
bool IsBalanced(TreeNode *proot)
{
    if (proot==NULL)
    {
        return true;//递归出口
    }
    int leftDepth=getDepth(proot->left);
    int rightDepth=getDepth(proot->right);
    if(leftDepth>rightDepth+1||rightDepth>leftDepth+1)
        return false;
    else
        return IsBalanced(proot->left)&&IsBalanced(proot->right);
}
int getDepth(TreeNode *proot){
    if (proot==NULL) {
        return 0;
    }
        int leftDepth=getDepth(proot->left);
        int rightDepth=getDepth(proot->right);
    return leftDepth>rightDepth?leftDepth+1:rightDepth+1;
    
}